package com.ruoyi.user.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.common.core.domain.entity.AppUser;
import org.apache.ibatis.annotations.Param;

import java.util.List;


/**
 * 用户表 数据层
 *
 * @author ruoyi
 */
public interface AppUserMapper extends BaseMapper<AppUser> {
    /**
     * 通过用户名查询用户
     *
     * @param userName 用户名
     * @return 用户对象信息
     */
    AppUser selectAppUserByUserName(String userName);

    /**
     * 通过openId查询用户
     *
     * @param openId 用户名
     * @return 用户对象信息
     */
    AppUser selectAppUserByOpenId(String openId);

    /**
     * 通过userId查询用户
     *
     * @param userId 用户id
     * @return 用户对象信息
     */
    AppUser selectAppUserByUserId(@Param("userId") Long userId);

    /**
     * 通过userId查询用户
     *
     * @param userIds 用户id
     * @return 用户对象信息
     */
    List<AppUser> selectAppUserByUserIds(@Param("userIds") List<Long> userIds);

    /**
     * 修改用户信息
     *
     * @param appUser 用户信息
     * @return 结果
     */
    int updateAppUser(AppUser appUser);

    /**
     * 修改用户信息
     *
     * @param appUser 用户信息
     * @return 结果
     */
    int updateAppUserByUserId(AppUser appUser);

    /**
     * 新增用户信息
     *
     * @param appUser 用户信息
     * @return 结果
     */
    public int insertAppUser(AppUser appUser);

    /**
     * 查询用户信息列表
     *
     * @param appUser
     * @return
     */
    List<AppUser> selectAppUserList(AppUser appUser);

}
